home *** CD-ROM | disk | FTP | other *** search
/ HyperLib 1997 Winter - Disc 1 / HYPERLIB-1997-Winter-CD1.ISO.7z / HYPERLIB-1997-Winter-CD1.ISO / オンラインウェア / PRG / MacPerl 506 appl folder.sit / MacPerl 506 appl folder / Mac_Perl_506r1m_appl / lib / Config.pm < prev    next >
Text File  |  1996-01-31  |  8KB  |  483 lines

  1. package Config;
  2. require Exporter;
  3. @ISA = (Exporter);
  4. @EXPORT = qw(%Config);
  5.  
  6. $] == 5.001 or die sprintf
  7.     "Perl lib version (5.001) doesn't match executable version (%.3f)¥n", $];
  8.  
  9. # This file was created by configpm when Perl was built. Any changes
  10. # made to this file will be lost the next time perl is built.
  11.  
  12. ##
  13. ## Manually created configuration file for Macintii
  14. ## Configuration time:    29Jan95
  15. ## Configured by:     Matthias Neeracher <neeri@iis.ee.ethz.ch>
  16. ## Target system:     Apple Macintosh
  17. #
  18.  
  19. $config_sh=<<'!END!OF!CONFIG!';
  20. dynamic_ext=''
  21. extensions='DB_File DynaLoader Fcntl GDBM_File NDBM_File POSIX SDBM_File Socket'
  22. static_ext='DynaLoader'
  23. osname='MacOS'
  24. osvers='7.5'
  25. archlib=''
  26. ccflags=''
  27. cppflags=''
  28. intsize='32'
  29. libpth=''
  30. sig_name=''
  31. so=''
  32. sharpbang=''
  33. shsharp=''
  34. startsh=''
  35. Author='neeri'
  36. CC68K='C'
  37. CCPPC='PPCC'
  38. CONFIG='true'
  39. COptions='-m -mc68020 -r'
  40. Date=''
  41. Header=''
  42. Id=''
  43. LOptions='-mf -w'
  44. Locker=''
  45. Log=''
  46. Mcc='C'
  47. PATCHLEVEL='0'
  48. PPCCOptions='-shared_lib_export on -opt local'
  49. RCSfile=''
  50. ROptions='-i :'
  51. Revision=''
  52. Source=''
  53. State=''
  54. afs=''
  55. alignbytes=''
  56. aphostname=''
  57. archlibexp=''
  58. archname=''
  59. awk='gawk'
  60. bash=''
  61. bin=''
  62. binexp=''
  63. bison='bison'
  64. byacc='byacc'
  65. byteorder='4321'
  66. c=''
  67. castflags='0'
  68. cat='Catenate'
  69. cc='C'
  70. cccdlflags=''
  71. ccdlflags=''
  72. cf_by=''
  73. cf_time=''
  74. chgrp=''
  75. chmod=''
  76. chown=''
  77. clocktype='clock_t'
  78. compress='Stuffit'
  79. contains=''
  80. cp='Duplicate'
  81. cpio=''
  82. cpp='C -e'
  83. cpp_stuff=''
  84. cpplast=''
  85. cppminus=''
  86. cpprun=''
  87. cppstdin=''
  88. cryptlib=''
  89. csh=''
  90. d_Gconvert='undef'
  91. d_access='undef'
  92. d_alarm='undef'
  93. d_archlib='undef'
  94. d_attrib='undef'
  95. d_bcmp='define'
  96. d_bcopy='define'
  97. d_bsdpgrp='undef'
  98. d_bzero='define'
  99. d_casti32='32'
  100. d_castneg='define'
  101. d_charsprf='undef'
  102. d_charvspr='undef'
  103. d_chown='undef'
  104. d_chroot='undef'
  105. d_chsize='undef'
  106. d_closedir='define'
  107. d_const='define'
  108. d_crypt='undef'
  109. d_csh='undef'
  110. d_cuserid='undef'
  111. d_dbl_dig='define'
  112. d_difftime='define'
  113. d_dirnamlen='define'
  114. d_dlerror='undef'
  115. d_dlopen='undef'
  116. d_dlsymun='undef'
  117. d_dosuid='undef'
  118. d_drem='undef'
  119. d_dup2='2'
  120. d_eunice='undef'
  121. d_fchmod='define'
  122. d_fchown='undef'
  123. d_fcntl='define'
  124. d_fd_macros='define'
  125. d_fd_set='define'
  126. d_fds_bits='define'
  127. d_fgetpos='define'
  128. d_flexfnam='define'
  129. d_flock='undef'
  130. d_fmod='define'
  131. d_fork='undef'
  132. d_fpathconf='undef'
  133. d_fsetpos='define'
  134. d_getgrps='undef'
  135. d_gethent='undef'
  136. d_gethname='define'
  137. d_getlogin='undef'
  138. d_getpgrp2='undef'
  139. d_getpgrp='undef'
  140. d_getppid='undef'
  141. d_getprior='undef'
  142. d_group='undef'
  143. d_htonl='define'
  144. d_index='undef'
  145. d_isascii='define'
  146. d_killpg='undef'
  147. d_link='undef'
  148. d_linuxstd='undef'
  149. d_locconv='undef'
  150. d_lockf='undef'
  151. d_lstat='define'
  152. d_mblen='undef'
  153. d_mbstowcs='define'
  154. d_mbtowc='define'
  155. d_memcmp='define'
  156. d_memcpy='define'
  157. d_memmove='define'
  158. d_memset='define'
  159. d_mkdir='define'
  160. d_mkfifo='undef'
  161. d_mktime='define'
  162. d_msg='undef'
  163. d_msgctl='undef'
  164. d_msgget='undef'
  165. d_msgrcv='undef'
  166. d_msgsnd='undef'
  167. d_mymalloc='undef'
  168. d_nice='undef'
  169. d_oldsock='undef'
  170. d_open3='3'
  171. d_passwd='undef'
  172. d_pathconf='undef'
  173. d_pause='undef'
  174. d_phostname='undef'
  175. d_pipe='undef'
  176. d_portable='undef'
  177. d_pwage='undef'
  178. d_pwchange='undef'
  179. d_pwclass='undef'
  180. d_pwcomment='undef'
  181. d_pwexpire='undef'
  182. d_pwquota='undef'
  183. d_readdir='define'
  184. d_readlink='define'
  185. d_rename='define'
  186. d_rewinddir='define'
  187. d_rmdir='define'
  188. d_safebcpy='define'
  189. d_safemcpy='undef'
  190. d_seekdir='define'
  191. d_select='define'
  192. d_sem='undef'
  193. d_semctl='undef'
  194. d_semget='undef'
  195. d_semop='undef'
  196. d_setegid='undef'
  197. d_seteuid='undef'
  198. d_setlinebuf='undef'
  199. d_setlocale='define'
  200. d_setpgid='undef'
  201. d_setpgrp2='2'
  202. d_setpgrp='undef'
  203. d_setprior='undef'
  204. d_setregid='undef'
  205. d_setresgid='undef'
  206. d_setresuid='undef'
  207. d_setreuid='undef'
  208. d_setrgid='undef'
  209. d_setruid='undef'
  210. d_setsid='undef'
  211. d_shm='undef'
  212. d_shmat='undef'
  213. d_shmatprototype='undef'
  214. d_shmctl='undef'
  215. d_shmdt='undef'
  216. d_shmget='undef'
  217. d_socket='define'
  218. d_sockpair='undef'
  219. d_statblks='undef'
  220. d_stdstdio='define'
  221. d_strchr='define'
  222. d_strcoll='undef'
  223. d_strctcpy='undef'
  224. d_strerrm='undef'
  225. d_strerror='define'
  226. d_strxfrm='define'
  227. d_suidsafe='undef'
  228. d_symlink='define'
  229. d_syscall='undef'
  230. d_sysconf='undef'
  231. d_sysernlst='undef'
  232. d_syserrlst='undef'
  233. d_system='undef'
  234. d_tcgetpgrp='undef'
  235. d_tcsetpgrp='undef'
  236. d_telldir='define'
  237. d_time='define'
  238. d_times='define'
  239. d_truncate='undef'
  240. d_tzname='undef'
  241. d_umask='define'
  242. d_uname='undef'
  243. d_vfork='undef'
  244. d_void_closedir='undef'
  245. d_voidsig='undef'
  246. d_voidtty='undef'
  247. d_volatile='define'
  248. d_vprintf='define'
  249. d_wait4='undef'
  250. d_waitpid='undef'
  251. d_wcstombs='define'
  252. d_wctomb='define'
  253. d_xenix='undef'
  254. date='Date'
  255. defvoidused=''
  256. direntrytype='dirent'
  257. dlext=''
  258. dlsrc=''
  259. echo='Echo'
  260. egrep='egrep'
  261. emacs='$emacs'
  262. eunicefix=':'
  263. expr='Evaluate'
  264. find=''
  265. flex='flex'
  266. fpostype='fpos_t'
  267. gcc='gcc'
  268. gccversion=''
  269. gidtype=''
  270. glibpth=''
  271. grep='grep'
  272. groupcat=''
  273. groupstype=''
  274. h_fcntl='true'
  275. h_sysfile='false'
  276. hint=''
  277. hostcat=''
  278. huge=''
  279. i_bsdioctl=''
  280. i_db='define'
  281. i_dbm='define'
  282. i_dirent='define'
  283. i_dld=''
  284. i_dlfcn=''
  285. i_fcntl='define'
  286. i_float='define'
  287. i_gdbm='undef'
  288. i_grp='undef'
  289. i_limits='define'
  290. i_malloc='undef'
  291. i_math='define'
  292. i_memory='define'
  293. i_ndbm='define'
  294. i_neterrno='undef'
  295. i_niin='undef'
  296. i_pwd='undef'
  297. i_sgtty=''
  298. i_stdarg='define'
  299. i_stddef='define'
  300. i_stdlib='define'
  301. i_string='define'
  302. i_sysdir='undef'
  303. i_sysfile='undef'
  304. i_sysfilio=''
  305. i_sysin='define'
  306. i_sysioctl='define'
  307. i_sysndir=''
  308. i_sysparam=''
  309. i_sysselct=''
  310. i_syssockio=''
  311. i_systime='define'
  312. i_systimek=''
  313. i_systimes=''
  314. i_termio=''
  315. i_termios=''
  316. i_time='define'
  317. i_unistd='define'
  318. i_utime=''
  319. i_varargs=''
  320. i_varhdr='stdarg.h'
  321. i_vfork=''
  322. incpath=''
  323. inews=''
  324. installarchlib=''
  325. installbin=''
  326. installmansrc=''
  327. installprivlib=''
  328. installscript=''
  329. known_extensions='DB_File DynaLoader Fcntl GDBM_File NDBM_File ODBM_File POSIX SDBM_File Socket'
  330. ksh=''
  331. large=''
  332. lddlflags=''
  333. ldflags=''
  334. less=''
  335. libc=''
  336. libs=''
  337. libswanted=''
  338. line='line'
  339. lint=''
  340. lkflags=''
  341. ln=''
  342. lns=''
  343. lp=''
  344. lpr='Print'
  345. ls='Directory'
  346. lseektype=''
  347. mail=''
  348. mailx=''
  349. make='BuildProgram'
  350. mallocobj=''
  351. mallocsrc=''
  352. malloctype=''
  353. manext=''
  354. mansrc=''
  355. mansrcexp=''
  356. medium=''
  357. mips=''
  358. mips_type=''
  359. mkdir='NewFolder'
  360. models=''
  361. modetype=''
  362. more=''
  363. mv='Move'
  364. mydomain=''
  365. myhostname=''
  366. myuname=''
  367. n=''
  368. nm_opt=''
  369. nroff=''
  370. optimize=''
  371. orderlib=''
  372. package=''
  373. passcat=''
  374. perl='Perl'
  375. pg=''
  376. phostname=''
  377. plibpth=''
  378. pmake=''
  379. pr=''
  380. prefix=''
  381. privlib=''
  382. privlibexp=''
  383. prototype=''
  384. randbits=''
  385. ranlib=''
  386. rm='Delete'
  387. rmail=''
  388. runnm=''
  389. scriptdir=''
  390. scriptdirexp=''
  391. sed='sed'
  392. selecttype=''
  393. sendmail=''
  394. sh=''
  395. shar=''
  396. shmattype=''
  397. signal_t='signal_t'
  398. sizetype=''
  399. sleep=''
  400. smail=''
  401. small=''
  402. sockethdr=''
  403. socketlib=''
  404. sort='Sort'
  405. spackage=''
  406. spitshell=''
  407. split=''
  408. ssizetype=''
  409. stdchar=''
  410. strings='define'
  411. submit=''
  412. sysman=''
  413. tail=''
  414. tar=''
  415. tbl=''
  416. test=''
  417. timeincl='time.h'
  418. timetype='time_t'
  419. touch='SetFile -m .'
  420. tr=''
  421. troff=''
  422. uidtype=''
  423. uname=''
  424. uniq=''
  425. usedl=''
  426. usemymalloc=''
  427. usenm=''
  428. useposix='true'
  429. usevfork=''
  430. usrinc=''
  431. uuname=''
  432. vi=''
  433. voidflags=''
  434. xlibpth=''
  435. yacc=''
  436. yaccflags=''
  437. zcat=''
  438. !END!OF!CONFIG!
  439.  
  440.  
  441. tie %Config, Config;
  442. sub TIEHASH { bless {} }
  443. sub FETCH { 
  444.     # check for cached value (which maybe undef so we use exists not defined)
  445.     return $_[0]->{$_[1]} if (exists $_[0]->{$_[1]});
  446.  
  447.     my($value); # search for the item in the big $config_sh string
  448.     return undef unless (($value) = $config_sh =~ m/^$_[1]='(.*)'¥s*$/m);
  449.  
  450.     $value = undef if $value eq 'undef'; # So we can say "if $Config{'foo'}".
  451.     $_[0]->{$_[1]} = $value; # cache it
  452.     return $value;
  453. }
  454.  
  455. sub FIRSTKEY {
  456.     $prevpos = 0;
  457.     my $key;
  458.     ($key) = $config_sh =~ m/^(.*)=/;
  459.     $key;
  460. }
  461.  
  462. sub NEXTKEY {
  463.     my ($pos, $len);
  464.     $pos = $prevpos;
  465.     $pos = index( $config_sh, "¥n", $pos) + 1;
  466.     $prevpos = $pos;
  467.     $len = index( $config_sh, "=", $pos) - $pos;
  468.     $len > 0 ? substr( $config_sh, $pos, $len) : undef;
  469. }
  470.  
  471. sub EXISTS{ 
  472.      exists($_[0]->{$_[1]})  or  $config_sh =~ m/^$_[1]=/m; 
  473. }
  474.  
  475. sub readonly { die "¥%Config::Config is read-only¥n" }
  476.  
  477. sub STORE { &readonly }
  478. sub DELETE{ &readonly }
  479. sub CLEAR { &readonly }
  480.  
  481.  
  482. 1;
  483.